package cn.iocoder.yudao.module.system.framework.examscore.template.impl;

import cn.iocoder.yudao.module.system.controller.admin.examscore.vo.ExamScoreImportExcelVO;
import cn.iocoder.yudao.module.system.framework.examscore.template.ExamScoreTemplateDataSource;
import org.springframework.stereotype.Component;

import java.math.BigDecimal;
import java.util.Arrays;
import java.util.List;

/**
 * 默认成绩导入模板数据源实现类
 *
 * @author 芋道源码
 */
@Component
public class DefaultExamScoreTemplateDataSource implements ExamScoreTemplateDataSource {

    @Override
    public List<ExamScoreImportExcelVO> getTemplateData() {
        return Arrays.asList(
            ExamScoreImportExcelVO.builder()
                .studentId(1L).studentNo("2024001").studentName("张三")
                .chineseScore(new BigDecimal("120")).mathScore(new BigDecimal("135"))
                .englishScore(new BigDecimal("128")).physicsScore(new BigDecimal("85"))
                .chemistryScore(new BigDecimal("78")).biologyScore(new BigDecimal("82"))
                .totalScore(new BigDecimal("628")).build(),
            ExamScoreImportExcelVO.builder()
                .studentId(2L).studentNo("2024002").studentName("李四")
                .chineseScore(new BigDecimal("115")).mathScore(new BigDecimal("142"))
                .englishScore(new BigDecimal("132")).physicsScore(new BigDecimal("88"))
                .chemistryScore(new BigDecimal("85")).biologyScore(new BigDecimal("79"))
                .totalScore(new BigDecimal("641")).build(),
            ExamScoreImportExcelVO.builder()
                .studentId(3L).studentNo("2024003").studentName("王五")
                .chineseScore(new BigDecimal("118")).mathScore(new BigDecimal("138"))
                .englishScore(new BigDecimal("125")).physicsScore(new BigDecimal("92"))
                .chemistryScore(new BigDecimal("80")).biologyScore(new BigDecimal("85"))
                .totalScore(new BigDecimal("638")).build()
        );
    }

    @Override
    public String getSourceType() {
        return "default";
    }
}